home *** CD-ROM | disk | FTP | other *** search
/ Game Programming in C++ - Start to Finish / GameProgrammingS.iso / developer_install / CEGUISDK-0.4.1-VC6-Native.exe / {app} / include / elements / CEGUIStaticTextProperties.h < prev    next >
Encoding:
C/C++ Source or Header  |  2005-03-10  |  5.3 KB  |  187 lines

  1. /************************************************************************
  2.     filename:     CEGUIStaticTextProperties.h
  3.     created:    10/7/2004
  4.     author:        Paul D Turner
  5.     
  6.     purpose:    Interface for properties for the StaticText class.
  7. *************************************************************************/
  8. /*************************************************************************
  9.     Crazy Eddie's GUI System (http://www.cegui.org.uk)
  10.     Copyright (C)2004 - 2005 Paul D Turner (paul@cegui.org.uk)
  11.  
  12.     This library is free software; you can redistribute it and/or
  13.     modify it under the terms of the GNU Lesser General Public
  14.     License as published by the Free Software Foundation; either
  15.     version 2.1 of the License, or (at your option) any later version.
  16.  
  17.     This library is distributed in the hope that it will be useful,
  18.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  19.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  20.     Lesser General Public License for more details.
  21.  
  22.     You should have received a copy of the GNU Lesser General Public
  23.     License along with this library; if not, write to the Free Software
  24.     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  25. *************************************************************************/
  26. #ifndef _CEGUIStaticTextProperties_h_
  27. #define _CEGUIStaticTextProperties_h_
  28.  
  29. #include "CEGUIProperty.h"
  30.  
  31.  
  32. // Start of CEGUI namespace section
  33. namespace CEGUI
  34. {
  35.  
  36. // Start of StaticTextProperties namespace section
  37. /*!
  38. \brief
  39.     Namespace containing all classes that make up the properties interface for the StaticText class
  40. */
  41. namespace StaticTextProperties
  42. {
  43. /*!
  44. \brief
  45.     Property to access the text colours for the StaticText widget.
  46.  
  47.     \par Usage:
  48.         - Name: TextColours
  49.         - Format: "tl:[aarrggbb] tr:[aarrggbb] bl:[aarrggbb] br:[aarrggbb]".
  50.  
  51.     \par Where:
  52.         - tl:[aarrggbb] is the top-left colour value specified as ARGB (hex).
  53.         - tr:[aarrggbb] is the top-right colour value specified as ARGB (hex).
  54.         - bl:[aarrggbb] is the bottom-left colour value specified as ARGB (hex).
  55.         - br:[aarrggbb] is the bottom-right colour value specified as ARGB (hex).
  56. */
  57. class TextColours : public Property
  58. {
  59. public:
  60.     TextColours() : Property(
  61.         "TextColours",
  62.         "Property to get/set the text colours for the StaticText widget.  Value is \"tl:[aarrggbb] tr:[aarrggbb] bl:[aarrggbb] br:[aarrggbb]\".",
  63.         "tl:FFFFFFFF tr:FFFFFFFF bl:FFFFFFFF br:FFFFFFFF")
  64.     {}
  65.  
  66.     String    get(const PropertyReceiver* receiver) const;
  67.     void    set(PropertyReceiver* receiver, const String& value);
  68. };
  69.  
  70.  
  71. /*!
  72. \brief
  73.     Property to access the horizontal formatting mode setting.
  74.  
  75.     \par Usage:
  76.         - Name: HorzFormatting
  77.         - Format: "[text]".
  78.  
  79.     \par Where [text] is one of:
  80.         - "LeftAligned"
  81.         - "RightAligned"
  82.         - "HorzCentred"
  83.         - "HorzJustified"
  84.         - "WordWrapLeftAligned"
  85.         - "WordWrapRightAligned"
  86.         - "WordWrapCentred"
  87.         - "WordWrapJustified"
  88. */
  89. class HorzFormatting : public Property
  90. {
  91. public:
  92.     HorzFormatting() : Property(
  93.         "HorzFormatting",
  94.         "Property to get/set the horizontal formatting mode.  Value is one of the HorzFormatting strings.",
  95.         "LeftAligned")
  96.     {}
  97.  
  98.     String    get(const PropertyReceiver* receiver) const;
  99.     void    set(PropertyReceiver* receiver, const String& value);
  100. };
  101.  
  102.  
  103. /*!
  104. \brief
  105.     Property to access the vertical formatting mode setting.
  106.  
  107.     \par Usage:
  108.         - Name: VertFormatting
  109.         - Format: "[text]".
  110.  
  111.     \par Where [text] is one of:
  112.         - "TopAligned"
  113.         - "BottomAligned"
  114.         - "VertCentred"
  115. */
  116. class VertFormatting : public Property
  117. {
  118. public:
  119.     VertFormatting() : Property(
  120.         "VertFormatting",
  121.         "Property to get/set the vertical formatting mode.  Value is one of the VertFormatting strings.",
  122.         "VertCentred")
  123.     {}
  124.  
  125.     String    get(const PropertyReceiver* receiver) const;
  126.     void    set(PropertyReceiver* receiver, const String& value);
  127. };
  128.  
  129.  
  130. /*!
  131. \brief
  132.     Property to access the setting for enabling the vertical scroll bar.
  133.  
  134.     \par Usage:
  135.         - Name: VertScrollbar
  136.         - Format: "[text]"
  137.  
  138.         \par Where [Text] is:
  139.         - "True" to indicate the scroll bar is enabled and will be shown when needed.
  140.         - "False" to indicate the scroll bar is disabled and will never be shown
  141. */
  142. class VertScrollbar : public Property
  143. {
  144. public:
  145.     VertScrollbar() : Property(
  146.         "VertScrollbar",
  147.         "Property to get/set the setting for the vertical scroll bar.  Value is either \"True\" or \"False\".",
  148.         "False")
  149.     {}
  150.  
  151.     String    get(const PropertyReceiver* receiver) const;
  152.     void    set(PropertyReceiver* receiver, const String& value);
  153. };
  154.  
  155.  
  156. /*!
  157. \brief
  158.     Property to access the setting for enabling the horizontal scroll bar.
  159.  
  160.     \par Usage:
  161.         - Name: HorzScrollbar
  162.         - Format: "[text]"
  163.  
  164.         \par Where [Text] is:
  165.         - "True" to indicate the scroll bar is enabled and will be shown when needed.
  166.         - "False" to indicate the scroll bar is disabled and will never be shown
  167. */
  168. class HorzScrollbar : public Property
  169. {
  170. public:
  171.     HorzScrollbar() : Property(
  172.         "HorzScrollbar",
  173.         "Property to get/set the setting for the horizontal scroll bar.  Value is either \"True\" or \"False\".",
  174.         "False")
  175.     {}
  176.  
  177.     String    get(const PropertyReceiver* receiver) const;
  178.     void    set(PropertyReceiver* receiver, const String& value);
  179. };
  180.  
  181. } // End of  StaticTextProperties namespace section
  182.  
  183. } // End of  CEGUI namespace section
  184.  
  185.  
  186. #endif    // end of guard _CEGUIStaticTextProperties_h_
  187.